package com.dhecp.core.domain;

import java.io.Serializable;
import java.util.Date;

import com.dhecp.common.utils.RandomValueUtils;
import com.fasterxml.jackson.annotation.JsonFormat;

/**
 * 业务功能Entity基类
 * @author DH-Xxj
 * @version 2019年11月15日
 */
public class BaseBusinessEntity implements Serializable{
	
    private static final long serialVersionUID = 1L;

    private Integer countRow;	//总记录数（存储过程查询数据分页使用）
	private String vDjMc;	//单据名称
	private String vSjLy;	//数据来源
	private String bigData;	//大数据处理专用字段单号
    private String guid; //单据guid值
    private String pGuid; //父表guid值
    private Integer iid; //行号
    private String nid; //单据编码
    private String bid; //单据编号
    private String pBid; //父单据编号
    private String cid; //所属单位
    private String aUser; //代理人
    private String aDept; //代理部门
    private String aPosition; //代理人岗位
    private String bUser; //制单人
    private String bDept; //制单部门
    private String bPosition; //制单人岗位
    private String gUser; //销售员
    private String gDept; //销售部门
    private String gClient; //客户编号
    private String gCName; //客户名称
    private String vBz; //备注
    private String vZdbz; //整单备注
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime; //创建日期
    @JsonFormat(locale = "zh",timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime; //生效日期（不进行常规插入与更新操作，通过单独功能实现，如流转）
    private Boolean effectStock; //数据生效标志（不进行常规插入与更新操作，通过单独功能实现，如流转）
    private Boolean deleted; 	//删除标志（不进行常规插入与更新操作，通过单独功能实现，如作废）
    private String activeFlow; 	//流程状态（不进行常规插入与更新操作，通过单独功能实现，如流转）
    private String procInstId;	//流程实例ID
    private String gBrand; 	//品牌
    private String gIDC; 	//客户型号
    private String gID; 	//型号
    private String gModel; 	//规格
    private String gName; 	//品名
    private String gNameC; 	//客户品名
    private String gSerial; //系列
    private String gIndex; 	//订货号
    private String gUnit; 	//计量单位
    private String vCgCp; 	//常规产品
    private String vWlBh; 	//物料编号
    private String vCpBbh;	//产品版本号
    private String vCpLx; 	//产品类别
    private String vXhZt; 	//型号状态
    private String vXhLx; 	//型号类型(T/S)
    private String vEanUpc; //统一物料编码
    private String vPgc; 	//PGC代码
    private String vZkDm; 	//折扣代码
    private String vTjLx; 	//特价类型
    private String vSmZq; 	//生命周期
    private String vEdi; 	//EDI/NON-EDI
    private Double bNumb; 	//数量
    private Double bPrice; 	//单价
    private String vXmBm;		//项目编码
    private String vXmMc;		//项目名称
    
    //虚拟字段
    private String cidName;	//所属单位
    private String aUserName; //代理人
    private String aDeptName; //代理部门
    private String bUserName; //制单人
    private String bDeptName; //制单部门
    private String gUserName; //销售员
    private String gDeptName; //销售部门
    private String activeFlowName; //流程状态
    private String vHFilesDefault; //表头默认附件字段
    private String vDFilesDefault; //明细默认附件字段

	public Integer getCountRow() {
		if (countRow == null){
			return 0;
		}
		return countRow;
	}
	public void setCountRow(Integer countRow) {
		this.countRow = countRow;
	}
	public String getvDjMc() {
		return vDjMc;
	}
	public void setvDjMc(String vDjMc) {
		this.vDjMc = vDjMc;
	}
	public String getvSjLy() {
		return vSjLy;
	}
	public void setvSjLy(String vSjLy) {
		this.vSjLy = vSjLy;
	}
	public String getBigData() {
		return bigData;
	}
	public void setBigData(String bigData) {
		this.bigData = bigData;
	}
	public String getGuid() {
		if (guid == null || "".equals(guid)){
			return RandomValueUtils.getGUID();
		}
		return guid;
	}
	public void setGuid(String guid) {
		this.guid = guid;
	}
	public String getpGuid() {
		return pGuid;
	}
	public void setpGuid(String pGuid) {
		this.pGuid = pGuid;
	}
	public Integer getIid() {
		if (iid == null){
			return 0;
		}
		return iid;
	}
	public void setIid(Integer iid) {
		this.iid = iid;
	}
	public String getNid() {
		return nid;
	}
	public void setNid(String nid) {
		this.nid = nid;
	}
	public String getBid() {
		return bid;
	}
	public void setBid(String bid) {
		this.bid = bid;
	}
	public String getpBid() {
		return pBid;
	}
	public void setpBid(String pBid) {
		this.pBid = pBid;
	}
	public String getCid() {
		return cid;
	}
	public void setCid(String cid) {
		this.cid = cid;
	}
	public String getaUser() {
		return aUser;
	}
	public void setaUser(String aUser) {
		this.aUser = aUser;
	}
	public String getaDept() {
		return aDept;
	}
	public void setaDept(String aDept) {
		this.aDept = aDept;
	}
	public String getaPosition() {
		return aPosition;
	}
	public void setaPosition(String aPosition) {
		this.aPosition = aPosition;
	}
	public String getbUser() {
		return bUser;
	}
	public void setbUser(String bUser) {
		this.bUser = bUser;
	}
	public String getbDept() {
		return bDept;
	}
	public void setbDept(String bDept) {
		this.bDept = bDept;
	}
	public String getbPosition() {
		return bPosition;
	}
	public void setbPosition(String bPosition) {
		this.bPosition = bPosition;
	}
	public String getgUser() {
		return gUser;
	}
	public void setgUser(String gUser) {
		this.gUser = gUser;
	}
	public String getgDept() {
		return gDept;
	}
	public void setgDept(String gDept) {
		this.gDept = gDept;
	}
	public String getgClient() {
		return gClient;
	}
	public void setgClient(String gClient) {
		this.gClient = gClient;
	}
	public String getgCName() {
		return gCName;
	}
	public void setgCName(String gCName) {
		this.gCName = gCName;
	}
	public String getvBz() {
		return vBz;
	}
	public void setvBz(String vBz) {
		this.vBz = vBz;
	}
	public String getvZdbz() {
		return vZdbz;
	}
	public void setvZdbz(String vZdbz) {
		this.vZdbz = vZdbz;
	}
	public Date getCreateTime() {
		if (createTime == null){
			return new Date();
		}
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}
	public Boolean getEffectStock() {
		if (effectStock == null){
			return false;
		}
		return effectStock;
	}
	public void setEffectStock(Boolean effectStock) {
		this.effectStock = effectStock;
	}
	public Boolean getDeleted() {
		if (deleted == null){
			return false;
		}
		return deleted;
	}
	public void setDeleted(Boolean deleted) {
		this.deleted = deleted;
	}
	public String getActiveFlow() {
		if (activeFlow == null || "".equals(activeFlow)){
			return "FlowZd";
		}
		return activeFlow;
	}
	public void setActiveFlow(String activeFlow) {
		this.activeFlow = activeFlow;
	}
	public String getProcInstId() {
		return procInstId;
	}
	public void setProcInstId(String procInstId) {
		this.procInstId = procInstId;
	}
	public String getgBrand() {
		return gBrand;
	}
	public void setgBrand(String gBrand) {
		this.gBrand = gBrand;
	}
	public String getgIDC() {
		return gIDC;
	}
	public void setgIDC(String gIDC) {
		this.gIDC = gIDC;
	}
	public String getgID() {
		return gID;
	}
	public void setgID(String gID) {
		this.gID = gID;
	}
	public String getgModel() {
		if (gModel == null || "".equals(gModel)){
			return "常规";
		}
		return gModel;
	}
	public void setgModel(String gModel) {
		this.gModel = gModel;
	}
	public String getgName() {
		return gName;
	}
	public void setgName(String gName) {
		this.gName = gName;
	}
	public String getgNameC() {
		return gNameC;
	}
	public void setgNameC(String gNameC) {
		this.gNameC = gNameC;
	}
	public String getgSerial() {
		return gSerial;
	}
	public void setgSerial(String gSerial) {
		this.gSerial = gSerial;
	}
	public String getgIndex() {
		return gIndex;
	}
	public void setgIndex(String gIndex) {
		this.gIndex = gIndex;
	}
	public String getgUnit() {
		return gUnit;
	}
	public void setgUnit(String gUnit) {
		this.gUnit = gUnit;
	}
	public String getvCgCp() {
		return vCgCp;
	}
	public void setvCgCp(String vCgCp) {
		this.vCgCp = vCgCp;
	}
	public String getvWlBh() {
		return vWlBh;
	}
	public void setvWlBh(String vWlBh) {
		this.vWlBh = vWlBh;
	}
	public String getvCpBbh() {
		return vCpBbh;
	}
	public void setvCpBbh(String vCpBbh) {
		this.vCpBbh = vCpBbh;
	}
	public String getvCpLx() {
		return vCpLx;
	}
	public void setvCpLx(String vCpLx) {
		this.vCpLx = vCpLx;
	}
	public String getvXhZt() {
		return vXhZt;
	}
	public void setvXhZt(String vXhZt) {
		this.vXhZt = vXhZt;
	}
	public String getvXhLx() {
		return vXhLx;
	}
	public void setvXhLx(String vXhLx) {
		this.vXhLx = vXhLx;
	}
	public String getvEanUpc() {
		return vEanUpc;
	}
	public void setvEanUpc(String vEanUpc) {
		this.vEanUpc = vEanUpc;
	}
	public String getvPgc() {
		return vPgc;
	}
	public void setvPgc(String vPgc) {
		this.vPgc = vPgc;
	}
	public String getvZkDm() {
		return vZkDm;
	}
	public void setvZkDm(String vZkDm) {
		this.vZkDm = vZkDm;
	}
	public String getvTjLx() {
		return vTjLx;
	}
	public void setvTjLx(String vTjLx) {
		this.vTjLx = vTjLx;
	}
	public String getvSmZq() {
		return vSmZq;
	}
	public void setvSmZq(String vSmZq) {
		this.vSmZq = vSmZq;
	}
	public String getvEdi() {
		return vEdi;
	}
	public void setvEdi(String vEdi) {
		this.vEdi = vEdi;
	}
	public Double getbNumb() {
		if (bNumb == null){
			return 0.0;
		}
		return bNumb;
	}
	public void setbNumb(Double bNumb) {
		this.bNumb = bNumb;
	}
	public Double getbPrice() {
		if (bPrice == null){
			return 0.0;
		}
		return bPrice;
	}
	public void setbPrice(Double bPrice) {
		this.bPrice = bPrice;
	}
	public String getCidName() {
		return cidName;
	}
	public void setCidName(String cidName) {
		this.cidName = cidName;
	}
	public String getaUserName() {
		return aUserName;
	}
	public void setaUserName(String aUserName) {
		this.aUserName = aUserName;
	}
	public String getaDeptName() {
		return aDeptName;
	}
	public void setaDeptName(String aDeptName) {
		this.aDeptName = aDeptName;
	}
	public String getbUserName() {
		return bUserName;
	}
	public void setbUserName(String bUserName) {
		this.bUserName = bUserName;
	}
	public String getbDeptName() {
		return bDeptName;
	}
	public void setbDeptName(String bDeptName) {
		this.bDeptName = bDeptName;
	}
	public String getgUserName() {
		return gUserName;
	}
	public void setgUserName(String gUserName) {
		this.gUserName = gUserName;
	}
	public String getgDeptName() {
		return gDeptName;
	}
	public void setgDeptName(String gDeptName) {
		this.gDeptName = gDeptName;
	}
	public String getActiveFlowName() {
		return activeFlowName;
	}
	public void setActiveFlowName(String activeFlowName) {
		this.activeFlowName = activeFlowName;
	}
	public String getvHFilesDefault() {
		return vHFilesDefault;
	}
	public void setvHFilesDefault(String vHFilesDefault) {
		this.vHFilesDefault = vHFilesDefault;
	}
	public String getvDFilesDefault() {
		return vDFilesDefault;
	}
	public void setvDFilesDefault(String vDFilesDefault) {
		this.vDFilesDefault = vDFilesDefault;
	}
	public String getvXmBm() {
		return vXmBm;
	}
	public void setvXmBm(String vXmBm) {
		this.vXmBm = vXmBm;
	}
	public String getvXmMc() {
		return vXmMc;
	}
	public void setvXmMc(String vXmMc) {
		this.vXmMc = vXmMc;
	}

}
